package cn.wolfcode.luowowo.search.service;

import cn.wolfcode.luowowo.search.query.SearchQueryObject;
import cn.wolfcode.luowowo.search.template.StrategyTemplate;
import cn.wolfcode.luowowo.search.vo.StatsResult;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

public interface IStrategySearchService {
    /**
     * 保存攻略
     * @param template
     */
    void save(StrategyTemplate template);

    /**
     * 获取所有的查询条件
     * @param condition
     * @return
     */
    List<StatsResult> listCondition(int condition);

    /**
     * 根据条件查询攻略
     * @param qo
     * @return
     */
    Page<StrategyTemplate> query(SearchQueryObject qo);

    /**
     * 查询文章数量前十的主题名称和它的目的地
     * @return
     */
    List<Map<String, Object>> listThemeCommendTop10();

    /**
     * 根据目的地名称查询攻略
     * @param keyword
     * @return
     */
    List<StrategyTemplate> listByDestName(String keyword);
}
